/* -------------------- 时钟逻辑 -------------------- */
function updateClock() {
    const now = new Date();
    const hours = now.getHours();
    const minutes = now.getMinutes();
    const seconds = now.getSeconds();
  
    // 数字时钟更新
    const timeEl = document.getElementById('time');
    const dateEl = document.getElementById('date');
    // 12小时制处理
    const period = hours >= 12 ? 'PM' : 'AM';
    const hour12 = hours % 12 || 12; 
    timeEl.textContent = `${hour12}:${minutes.toString().padStart(2, '0')}:${seconds.toString().padStart(2, '0')} ${period}`;
    dateEl.textContent = now.toLocaleDateString('zh-CN', {
      year: 'numeric', month: 'long', day: 'numeric'
    });
  
    // 模拟指针角度计算（度数）
    const hourDeg = (hour12 * 30) + (minutes * 0.5);   // 小时：30度/小时，分钟：0.5度/分钟
    const minDeg = (minutes * 6) + (seconds * 0.1);    // 分钟：6度/分钟，秒：0.1度/秒
    const secDeg = seconds * 6;                        // 秒：6度/秒
  
    // 更新指针样式
    document.querySelector('.hour-hand').style.transform = `translateX(-50%) rotate(${hourDeg}deg)`;
    document.querySelector('.min-hand').style.transform = `translateX(-50%) rotate(${minDeg}deg)`;
    document.querySelector('.sec-hand').style.transform = `translateX(-50%) rotate(${secDeg}deg)`;
  }
  // 每秒更新 + 初始化
  setInterval(updateClock, 1000);
  updateClock();
  
  
  /* -------------------- 计算器逻辑 -------------------- */
  const display = document.getElementById('calc-display');
  const buttons = document.querySelectorAll('.btn');
  
  buttons.forEach(btn => {
    btn.addEventListener('click', () => {
      const value = btn.dataset.value;
      if (value === 'C') { // 清除
        display.value = '';
      } else if (value === '=') { // 计算
        try {
          // 替换特殊运算符（×→*，÷→/）
          let expr = display.value.replace('×', '*').replace('÷', '/');
          display.value = eval(expr); // 简单计算（实际项目建议用库，避免安全问题）
        } catch (error) {
          display.value = '错误';
        }
      } else { // 拼接输入
        display.value += value;
      }
    });
  });